!------------------------------------------------------------------------------
! TJU/Department of Mechanics, Fluid Mechanics, Code START
!------------------------------------------------------------------------------
!> @Author: Jianxin Liu shookware@tju.edu.cn
!> @Date: 2024-08-17 21:19:55
!> @LastEditTime: 2024-08-17 21:30:06
!> @LastEditors: Jianxin Liu shookware@tju.edu.cn
!> @Description:
!> @FilePath: /START_NS_3D/src/reconstructor/module_reconstructor_weno_5order.f90
!> @Copyright (c) 2024 by Jianxin Liu email: shookware@tju.edu.cn, All Rights Reserved.
!------------------------------------------------------------------------------
submodule(mod_reconstructor) submod_reconstructor_weno_5order

contains

   !@ TODO: 需要编写weno5格式的代码
   module subroutine CreateWENO5Order(this, length, stencil_width, flg_bounds, limiter)
      class(type_reconstructor_weno_5order), intent(inout) :: this
      integer, intent(in) :: length
      integer, intent(in) :: stencil_width
      logical, intent(in) :: flg_bounds(2)
      integer, intent(in), optional :: limiter
   end subroutine CreateWENO5Order

   module subroutine ReconstructWENO5Order(this, f, h, s)
      class(type_reconstructor_weno_5order), intent(in) :: this
      class(type_vector_base), intent(in) :: f
      class(type_vector_base), intent(inout) :: h
      character, intent(in), optional :: s
   end subroutine ReconstructWENO5Order

   module subroutine DestroyUpWENO5Order(this)
      class(type_reconstructor_weno_5order), intent(inout) :: this
   end subroutine DestroyUpWENO5Order

   module subroutine ReconstructWENO5Order2(this, f, h, s)
      class(type_reconstructor_weno_5order), intent(in) :: this
      class(type_self_vector), intent(in) :: f
      class(type_self_vector), intent(inout) :: h
      character, intent(in), optional :: s
   end subroutine ReconstructWENO5Order2

end submodule submod_reconstructor_weno_5order
